assert_instr: add support for stricter tests - #2212
Conversation
|
I am also confused by |
95bd209 to
53f3cf0
Compare
53f3cf0 to
7e05b7e
Compare
|
This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
7e05b7e to
e55b6c8
Compare
e55b6c8 to
373a0de
Compare
|
Ah... it's 5 instructions somewhere. That's annoying. Maybe it should ignore some of these as they have nothing to do with the actual intrinsic? |
a7d9f32 to
993c8d9
Compare
993c8d9 to
38a6da0
Compare
38b8f4f to
814e706
Compare
|
|
|
Yeah at some point I realized that this is about which instructions are enabled statically, but it'll still actually generate code for all intrinsics and even run |
Motivated by #2208, this extends
assert_instrwith support for stricter tests:not(instr); the macro will then ensure that the given instruction does not appear in the disassembly.limit(n); the macro will ensure that overall there are no more thanninstructions in the disassembly.I verified that the problematic pack tests indeed fail before the revert of #2033. I am not sure if the
notpart is even worth it, which is why the 2nd commit removes its uses -- one has to have very specific instructions in mind to exclude them, a general limit on how many instructions total there are seems better? So unless you think I should keep it I plan to remove the first commit from this again.r? @folkertdev